using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;

using System.Web.Mail;

using AspNetForums.Components;

namespace AspNetForums.Admin
{
	/// <summary>
	/// Summary description for FlushMailQueue.
	/// </summary>
	public class FlushMailQueue : System.Web.UI.Page
	{
		private void Page_Load(object sender, System.EventArgs e)
		{
			// Put user code to initialize the page here
			ForumsDataProvider dp = ForumsDataProvider.Instance();
			System.Collections.ArrayList success = new System.Collections.ArrayList();
			ArrayList emails = Emails.GetQueuedEmails(ForumContext.Current.Context);
			foreach( EmailTemplate email in emails )
			{
				success.Clear();
				Response.Write( "Sending... " + email.To + ": " + email.Subject + "<br>" );
				if( Emails.SendMail((MailMessage)email) )
				{
					success.Add(email.EmailID);
					dp.EmailDelete(	success );
					Response.Write( "Success... <br>" );
				}
			}
			
		}

		#region Web Form Designer generated code
		override protected void OnInit(EventArgs e)
		{
			//
			// CODEGEN: This call is required by the ASP.NET Web Form Designer.
			//
			InitializeComponent();
			base.OnInit(e);
		}
		
		/// <summary>
		/// Required method for Designer support - do not modify
		/// the contents of this method with the code editor.
		/// </summary>
		private void InitializeComponent()
		{    
			this.Load += new System.EventHandler(this.Page_Load);
		}
		#endregion
	}
}
